﻿namespace UniSender.Native
{
    public enum ContactType
    {
        email,
        phone
    }

    public enum ContactStatus
    {
        @new,
        invited,
        active,
        inactive,
        unsubscribed,
        blocked,
        activation_requested
    }

    public enum ContactAvailability
    {
        available,
        unreachable,
        temp_unreachable,
        mailbox_full,
        spam_rejected,
        spam_folder
    }

    public enum CampaingStatus
    {
        waits_censor,
        censor_hold,
        declined,
        waits_schedule,
        scheduled,
        in_progress,
        analysed,
        completed,
        stopped,
        canceled
    }

    public enum WrapType
    {
        skip,
        right,
        left,
        center
    }

    public enum ImagesAs
    {
        attachments,
        only_links,
        user_default
    }

    public enum EmailError
    {
        retry_later,
        attachment_is_not_bytestring,
        attachment_quota_error,
        body_empty,
        body_exceeds_length,
        empty_subject,
        subject_exceeds_length,
        wrong_header_parameter,
        header_not_allowed,
        invalid_email,
        empty_sender_name,
        invalid_sender_email,
        unchecked_sender_email,
        unsupported_lang,
        unsubscribe_link_missing
    }

    public enum MessageStatus
    {
        not_sent            =   0,
        ok_sent             =   1,
        ok_delivered        =   2,
        ok_read             =   3,
        ok_spam_folder      =   4,
        ok_link_visited     =   5,
        ok_unsubscribed     =   6,
        err_user_unknown    =  -1,
        err_user_inactive   =  -2,
        err_mailbox_full    =  -3,
        err_spam_rejected   =  -4,
        err_spam_folder     =  -5,
        err_delivery_failed =  -6,
        err_will_retry      =  -7,
        err_resend          =  -8,
        err_domain_inactive =  -9,
        err_skip_letter     = -10,
        err_spam_skipped    = -11,
        err_spam_retry      = -12,
        err_unsubscribed    = -13,
        err_src_invalid     = -14,
        err_dest_invalid    = -15,
        err_not_allowed     = -16,
        err_not_available   = -17,
        err_lost            = -18,
        err_internal        = -19
    }

    public enum FieldType
    {
        @string,
        text,
        number,
        @bool
    }
}
